UNPKG

nextjs-panel

Version:

Schema-based admin panel generator for Next.js using Prisma and React components.

12 lines (11 loc) 1.01 kB
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime"; import { registeredResources } from "@/resources"; import { SchemaTable } from "nextjs-panel"; import Link from "next/link"; export default async function AdminPage({ params }) { const { resource: resourceKey } = await params; const resource = registeredResources[resourceKey]; if (!resource) return (_jsx(_Fragment, { children: _jsx("div", { children: "404 - Resource not found" }) })); return (_jsxs("main", { className: "p-6 w-full", children: [_jsx("h1", { className: "text-2xl font-bold mb-4", children: resource.label }), _jsx("div", { className: "flex justify-end py-4 mr-4", children: _jsx(Link, { href: `/admin/${resource.name}/add`, children: _jsxs("button", { className: "bg-blue-500 hover:bg-blue-700 text-white font-bold py-2 px-4 rounded", children: ["Add ", resource.label] }) }) }), _jsx(SchemaTable, { schema: resource.getTableColumns(), api: resource.getApiRoutes().list })] })); }